package com.zlx.mall.base.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.Instant;

/**
 * <p>
 * Basic Resource Table
 * </p>
 *
 * @author taotao
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@TableName("`basic_resource`")
public class BasicResource implements Serializable {

    private static final long serialVersionUID = 1L;

    /** PK,AI */
    @TableId(value = "`id`", type = IdType.AUTO)
    private Long id;
    /** Resource Key */
    @TableField("`resource_key`")
    private String resourceKey;
    /** Resource Value */
    @TableField("`resource_value`")
    private String resourceValue;
    /** Version,Increment With Update */
    @TableField("`version`")
    private Integer version;
    /** Delete Status {!0-deleted} */
    @TableField("`is_delete`")
    private Long isDelete;
    /** Create Timestamp */
    @TableField("`create_timestamp`")
    private Instant createTimestamp;
    /** Modify Timestamp */
    @TableField("`modify_timestamp`")
    private Instant modifyTimestamp;
    /** Create Operator ID */
    @TableField("`create_operator_id`")
    private Long createOperatorId;
    /** Modify Operator ID */
    @TableField("`modify_operator_id`")
    private Long modifyOperatorId;

    /** PK,AI */
    public static final String ID = "id";
    /** Resource Key */
    public static final String RESOURCE_KEY = "resource_key";
    /** Resource Value */
    public static final String RESOURCE_VALUE = "resource_value";
    /** Version,Increment With Update */
    public static final String VERSION = "version";
    /** Delete Status {!0-deleted} */
    public static final String IS_DELETE = "is_delete";
    /** Create Timestamp */
    public static final String CREATE_TIMESTAMP = "create_timestamp";
    /** Modify Timestamp */
    public static final String MODIFY_TIMESTAMP = "modify_timestamp";
    /** Create Operator ID */
    public static final String CREATE_OPERATOR_ID = "create_operator_id";
    /** Modify Operator ID */
    public static final String MODIFY_OPERATOR_ID = "modify_operator_id";
}
